package hcn.protocol.ods;

import ctd.util.annotation.DicMapping;
import ctd.util.xml.jaxb.DateTimeAdapter;
import hcn.protocol.ods.diagnosis.AbstractResponse;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import java.io.Serializable;
import java.util.Date;

/**
 * Created by zhengz on 2015/12/17.
 */
@XmlRootElement(name = "registrationInfo")
public class RegistrationInfo extends AbstractResponse implements Serializable{

    private static final long serialVersionUID = 8720664050323419843L;

    private String orgId;
    private String mpiId;
    private String regName;
    private String regSex;
    private String nationality;
    @DicMapping(dic ="certificateType&hcn-mpi-dictionary-certificateType")
    private String identityType;
    private String identityNo;
    private String domain;
    @DicMapping(dic ="cardTypeForReg&hcn-mpi-dictionary-cardType")
    private String cardType;
    private String cardNo;
    private String regUser;
    private String regPwd;
    private String regWay;
    private Date regDt;
    private Date workDate;
    private String seqId;
    private String regDeptId;
    private String localDoctorId;
    @DicMapping(dic ="planTime&hcn-base-dictionary-HCN_outpatientSchedulingService")
    private String planTime;
    private Date startDt;
    private Date endDt;
    private String regSourceId;
    private String regRecordId;
    //中山特殊需求属性
    private String regDeptName;
    private String doctorname;
    private String workId;
    private String loginUserCardType;
    private String loginUserCardId;
    private String regPhoneNo;
    private String rmRegDeptId;
    private String reviewFlag;
    //预约挂号成功后返回的医院提示信息
    private String hospitalTip;

    @XmlElement
    public String getOrgId() {
        return orgId;
    }

    public void setOrgId(String orgId) {
        this.orgId = orgId;
    }

    @XmlElement
    public String getMpiId() {
        return mpiId;
    }

    public void setMpiId(String mpiId) {
        this.mpiId = mpiId;
    }

    @XmlElement
    public String getRegName() {
        return regName;
    }

    public void setRegName(String regName) {
        this.regName = regName;
    }

    @XmlElement
    public String getRegSex() {
        return regSex;
    }

    public void setRegSex(String regSex) {
        this.regSex = regSex;
    }

    @XmlElement
    public String getIdentityType() {
        return identityType;
    }

    public void setIdentityType(String identityType) {
        this.identityType = identityType;
    }

    @XmlElement
    public String getIdentityNo() {
        return identityNo;
    }

    public void setIdentityNo(String identityNo) {
        this.identityNo = identityNo;
    }

    @XmlElement
    public String getCardType() {
        return cardType;
    }

    @XmlElement
    public void setCardType(String cardType) {
        this.cardType = cardType;
    }

    @XmlElement
    public String getCardNo() {
        return cardNo;
    }

    public void setCardNo(String cardNo) {
        this.cardNo = cardNo;
    }

    @XmlElement
    public String getRegUser() {
        return regUser;
    }

    public void setRegUser(String regUser) {
        this.regUser = regUser;
    }

    @XmlElement
    public String getRegWay() {
        return regWay;
    }

    public void setRegWay(String regWay) {
        this.regWay = regWay;
    }

    @XmlElement
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    public Date getRegDt() {
        return regDt;
    }

    public void setRegDt(Date regDt) {
        this.regDt = regDt;
    }

    @XmlElement
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    public Date getWorkDate() {
        return workDate;
    }

    public void setWorkDate(Date workDate) {
        this.workDate = workDate;
    }

    @XmlElement
    public String getSeqId() {
        return seqId;
    }

    public void setSeqId(String seqId) {
        this.seqId = seqId;
    }

    @XmlElement
    public String getRegDeptId() {
        return regDeptId;
    }

    public void setRegDeptId(String regDeptId) {
        this.regDeptId = regDeptId;
    }

    @XmlElement
    public String getLocalDoctorId() {
        return localDoctorId;
    }

    public void setLocalDoctorId(String localDoctorId) {
        this.localDoctorId = localDoctorId;
    }

    @XmlElement
    public String getPlanTime() {
        return planTime;
    }

    public void setPlanTime(String planTime) {
        this.planTime = planTime;
    }

    @XmlElement
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    public Date getStartDt() {
        return startDt;
    }

    public void setStartDt(Date startDt) {
        this.startDt = startDt;
    }

    @XmlElement
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
    public Date getEndDt() {
        return endDt;
    }

    public void setEndDt(Date endDt) {
        this.endDt = endDt;
    }

    @XmlElement
    public String getRegSourceId() {
        return regSourceId;
    }

    public void setRegSourceId(String regSourceId) {
        this.regSourceId = regSourceId;
    }

    @XmlElement
    public String getRegRecordId() {
        return regRecordId;
    }

    public void setRegRecordId(String regRecordId) {
        this.regRecordId = regRecordId;
    }

    @XmlElement
    public String getRegPwd() {
        return regPwd;
    }

    public void setRegPwd(String regPwd) {
        this.regPwd = regPwd;
    }

    @XmlElement
    public String getNationality() {
        return nationality;
    }

    public void setNationality(String nationality) {
        this.nationality = nationality;
    }

    @XmlElement
    public String getDomain() {
        return domain;
    }

    public void setDomain(String domain) {
        this.domain = domain;
    }

    @XmlElement
    public String getRegDeptName() {
        return regDeptName;
    }

    public void setRegDeptName(String regDeptName) {
        this.regDeptName = regDeptName;
    }

    @XmlElement
    public String getDoctorname() {
        return doctorname;
    }

    public void setDoctorname(String doctorname) {
        this.doctorname = doctorname;
    }

    @XmlElement
    public String getWorkId() {
        return workId;
    }

    public void setWorkId(String workId) {
        this.workId = workId;
    }

    @XmlElement
    public String getLoginUserCardType() {
        return loginUserCardType;
    }

    public void setLoginUserCardType(String loginUserCardType) {
        this.loginUserCardType = loginUserCardType;
    }

    @XmlElement
    public String getLoginUserCardId() {
        return loginUserCardId;
    }

    public void setLoginUserCardId(String loginUserCardId) {
        this.loginUserCardId = loginUserCardId;
    }

    @XmlElement
    public String getRegPhoneNo() {
        return regPhoneNo;
    }

    public void setRegPhoneNo(String regPhoneNo) {
        this.regPhoneNo = regPhoneNo;
    }

    @XmlElement
    public String getRmRegDeptId() {
        return rmRegDeptId;
    }

    public void setRmRegDeptId(String rmRegDeptId) {
        this.rmRegDeptId = rmRegDeptId;
    }

    @XmlElement
    public String getReviewFlag() {
        return reviewFlag;
    }

    public void setReviewFlag(String reviewFlag) {
        this.reviewFlag = reviewFlag;
    }

    @XmlElement
    public String getHospitalTip() {
        return hospitalTip;
    }

    public void setHospitalTip(String hospitalTip) {
        this.hospitalTip = hospitalTip;
    }
}
